Plotly তে 3D Line Plots এবং Meshgrid Plots তৈরি করা ৩D ডেটা বিশ্লেষণে অত্যন্ত কার্যকরী। 3D Line Plot সাধারণত তিনটি মাত্রার মধ্যে সম্পর্ক প্রদর্শন করতে ব্যবহৃত হয়, যেখানে Meshgrid Plot ত্রিভূজাকার পৃষ্ঠ (Surface) বা ক্ষেত্রের বিশ্লেষণ করতে ব্যবহৃত হয়। এখানে আমরা 3D Line Plot এবং Meshgrid Plot তৈরির পদ্ধতি এবং ব্যবহার দেখব।
3D Line Plot
3D Line Plot ব্যবহার করে আপনি তিনটি ভেরিয়েবলের মধ্যে সম্পর্ক চিত্রিত করতে পারেন। এই ধরনের প্লট সাধারণত পয়েন্টগুলোকে লাইন দ্বারা সংযুক্ত করে একটি ৩D রেন্ডারিং তৈরি করে, যা তিনটি মাত্রার মধ্যে সম্পর্ক এবং ডেটার পরিবর্তন দেখাতে সাহায্য করে।
৩D Line Plot তৈরি করার উদাহরণ
import plotly.graph_objects as go
import numpy as np
# ডেটা তৈরি করা
t = np.linspace(0, 10, 100) # X-অক্ষের জন্য সময়ের মান
x = np.sin(t) # X-অক্ষের জন্য সাইন ফাংশন
y = np.cos(t) # Y-অক্ষের জন্য কসম ফাংশন
z = t # Z-অক্ষের জন্য সময়ের মান
# 3D Line Plot তৈরি
fig = go.Figure(data=go.Scatter3d(
x=x, y=y, z=z,
mode='lines', # লাইন প্লট তৈরি করা
line=dict(color=z, colorscale='Viridis', width=4) # লাইন রঙ এবং প্রস্থ কাস্টমাইজ করা
))
# গ্রাফ প্রদর্শন
fig.show()
ব্যাখ্যা:
- এখানে,
x,y, এবংzভেরিয়েবলের মান সাইন এবং কসম ফাংশনের মাধ্যমে তৈরি করা হয়েছে। mode='lines'দিয়ে লাইন প্লট তৈরি করা হয়েছে।line=dict(color=z, colorscale='Viridis', width=4)ব্যবহার করে লাইনটির রঙ এবং প্রস্থ কাস্টমাইজ করা হয়েছে।
Meshgrid Plot
Meshgrid Plot সাধারণত ত্রৈমাত্রিক পৃষ্ঠ বা ক্ষেত্র চিত্রিত করার জন্য ব্যবহৃত হয়। এটি মূলত X এবং Y এর বিভিন্ন মানের জন্য Z এর মান চিত্রিত করে, যা ৩D পৃষ্ঠ (surface) তৈরি করে।
Meshgrid Plot তৈরি করার উদাহরণ
import plotly.graph_objects as go
import numpy as np
# ডেটা তৈরি করা
x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
X, Y = np.meshgrid(x, y) # 2D ম্যাট্রিক্স তৈরি
Z = np.sin(np.sqrt(X**2 + Y**2)) # Z মান হিসাবে সাইন ফাংশন ব্যবহার
# Meshgrid Plot তৈরি
fig = go.Figure(data=go.Surface(
z=Z, x=X, y=Y, # X, Y, Z এর মান ব্যবহার করা
colorscale='Viridis', # রঙের স্কেল কাস্টমাইজ করা
colorbar=dict(title='Z মান') # কালারবার কাস্টমাইজ করা
))
# গ্রাফ প্রদর্শন
fig.show()
ব্যাখ্যা:
np.meshgrid(x, y)ব্যবহার করে X এবং Y এর মানের জন্য একটি ২D ম্যাট্রিক্স তৈরি করা হয়েছে।Z = np.sin(np.sqrt(X**2 + Y**2))এই ফাংশনটি Z মান হিসেবে ৩D পৃষ্ঠের উচ্চতা নির্ধারণ করে।go.Surfaceব্যবহার করে একটি ৩D পৃষ্ঠ (surface plot) তৈরি করা হয়েছে এবংcolorscale='Viridis'দিয়ে রঙের স্কেল কাস্টমাইজ করা হয়েছে।
3D Line Plot এবং Meshgrid Plot এর মধ্যে পার্থক্য
| বৈশিষ্ট্য | 3D Line Plot | Meshgrid Plot |
|---|---|---|
| ডেটার ধরন | তিনটি মাত্রার মধ্যে সম্পর্ক চিত্রিত করা হয় | একটি ৩D পৃষ্ঠ বা ক্ষেত্র চিত্রিত করা হয় |
| ব্যবহার | ৩টি ভেরিয়েবলের মধ্যে সম্পর্ক দেখানোর জন্য | X, Y এর বিভিন্ন মানের জন্য Z মান চিত্রিত করতে |
| প্রয়োগ | টাইম সিরিজ, ৩D ট্র্যাকিং ইত্যাদিতে ব্যবহৃত হয় | ৩D পৃষ্ঠ বিশ্লেষণ, সায়েন্টিফিক ডেটা বিশ্লেষণে ব্যবহৃত |
| চিত্রিত উপস্থাপন | একক লাইন বা পথ হিসাবে ডেটা দেখানো হয় | একটি ৩D পৃষ্ঠ বা ম্যাট্রিক্স হিসেবে ডেটা দেখানো হয় |
Plotly তে 3D Line এবং Meshgrid Plots কাস্টমাইজেশন
৩D Line Plot কাস্টমাইজেশন
import plotly.graph_objects as go
import numpy as np
# ডেটা তৈরি করা
t = np.linspace(0, 10, 100)
x = np.sin(t)
y = np.cos(t)
z = t
# 3D Line Plot কাস্টমাইজ করা
fig = go.Figure(data=go.Scatter3d(
x=x, y=y, z=z,
mode='lines',
line=dict(color=z, colorscale='Cividis', width=6)
))
# গ্রাফ কাস্টমাইজ করা
fig.update_layout(title="Customized 3D Line Plot",
scene=dict(xaxis_title='X', yaxis_title='Y', zaxis_title='Z'))
# গ্রাফ প্রদর্শন
fig.show()
এখানে, line=dict(color=z, colorscale='Cividis', width=6) দিয়ে লাইনটির রঙ, স্কেল এবং প্রস্থ কাস্টমাইজ করা হয়েছে এবং update_layout ব্যবহার করে টাইটেল এবং অক্ষের শিরোনাম কাস্টমাইজ করা হয়েছে।
Meshgrid Plot কাস্টমাইজেশন
import plotly.graph_objects as go
import numpy as np
# ডেটা তৈরি করা
x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
X, Y = np.meshgrid(x, y)
Z = np.cos(np.sqrt(X**2 + Y**2))
# Meshgrid Plot কাস্টমাইজ করা
fig = go.Figure(data=go.Surface(
z=Z, x=X, y=Y,
colorscale='Plasma',
colorbar=dict(title='Z মান'),
showscale=True
))
# গ্রাফ কাস্টমাইজ
fig.update_layout(title="Customized Meshgrid Plot",
scene=dict(xaxis_title='X', yaxis_title='Y', zaxis_title='Z'))
# গ্রাফ প্রদর্শন
fig.show()
এখানে, colorscale='Plasma' এবং update_layout ব্যবহার করে রঙের স্কেল এবং গ্রাফের শিরোনাম কাস্টমাইজ করা হয়েছে।
সারাংশ
Plotly তে 3D Line Plot এবং Meshgrid Plot তৈরি করা ডেটার বিশ্লেষণ এবং ভিজুয়ালাইজেশনে একটি শক্তিশালী টুল। 3D Line Plot তিনটি ভেরিয়েবলের মধ্যে সম্পর্ক দেখানোর জন্য ব্যবহৃত হয়, এবং Meshgrid Plot ত্রিভূজাকার পৃষ্ঠ বা ক্ষেত্রের বিশ্লেষণ করে। আপনি Plotly দিয়ে এই প্লটগুলো কাস্টমাইজ করে আরও বিস্তারিত এবং কার্যকরী ভিজুয়ালাইজেশন তৈরি করতে পারেন।
Read more